﻿#include "aboutndd.h"
#include "common.h"
#include "styleset.h"
#include <QPalette>

AboutNdd::AboutNdd(QWidget *parent)
	: QWidget(parent)
{
	ui.setupUi(this);

	ui.label->setOpenExternalLinks(true);
	// 隐藏最大化、最小化按钮
	setWindowFlags(windowFlags() & ~Qt::WindowMinMaxButtonsHint);
	connect(ui.aboutPushButton, &QPushButton::clicked, this, &AboutNdd::onButtonOkayClicked);
	
	// 根据主题设置链接颜色
	updateLinkColor();
	
	// 应用对话框样式（边框和阴影）
	applyDialogStyle(this);
}

AboutNdd::~AboutNdd()
{}

void AboutNdd::appendText(QString text)
{
	ui.nddMsgText->appendPlainText(text);
}

void AboutNdd::updateLinkColor()
{
	// 获取当前主题的链接颜色（来自 QPalette）
	QPalette palette = qApp->palette();
	QColor linkColor = palette.color(QPalette::Link);
	
	// 如果是暗色主题，使用更亮的蓝色（与问题反馈中的链接颜色一致）
	if (StyleSet::isCurrentDeepStyle())
	{
		linkColor = QColor(42, 130, 218); // 与 styleset.cpp 中的链接颜色一致
	}
	
	// 设置链接颜色样式
	QString colorStr = QString("rgb(%1, %2, %3)")
	                   .arg(linkColor.red())
	                   .arg(linkColor.green())
	                   .arg(linkColor.blue());
	
	QString styleSheet = QString("QLabel a { color: %1; }").arg(colorStr);
	ui.label->setStyleSheet(styleSheet);
}

void AboutNdd::onButtonOkayClicked()
{
	close();
}
